The present invention relates to an apparatus and a method for capturing data into a markup language data entry form, and more particularly, to an apparatus and a method for capturing data such as magnetically encoded card data, hand stroke data, voice data, image data and video data into an input field of a markup language.
Rapid advances in electronics have given rise to powerful mobile computers capable of performing tasks reserved for minicomputers of the past. The power of these mobile computers is further enhanced by advances in telecommunications technology which enable these mobile computers to communicate with each other and to access data in an untethered manner. In these systems, when one mobile computer sends a message to another computer, the message is sent as a sequence of data packets onto a communication system. Typically, the communication system is divided into a number of links. A link may be a local area network (LAN) which is capable of supporting a few hundred nodes where computers may be attached. The LANs are connected together by a number of different standard devices which forward the packets to their destination. Other types of link in a communication system may include a wide area network (WAN) formed by joining other links such as LANs, or by directly joining computers in a point-to-point connection.
Concurrent with the rise of mobile computing is a phenomenon known as networking. A global network known as the Internet is an increasingly popular medium for communicating and publishing widely accessible documents. A network of networks, the Internet transfers information using a common protocol called Hyper Text Transfer Protocol (HTTP) which tells computers connected to the network how to locate and exchange files with one another. HTTP is a stateless protocol designed to transfer documents at a fast rate. Stateless systems do not remember any information from one document transfer to the next, or from one connection to another. If any other documents or files are needed, a new connection must be opened between computers, any request and response made, and a connection closed.
An important class of documents communicated over the Internet conform to a Hyper Text Markup Language (HTML) that a World-Wide-Web (WWW or Web) client browser can translate and display. Once posted on a Web server, these documents or compilations of pages can be retrieved and viewed by anyone who has access to the Internet and a browser on their client computer. As a global communications system, the Internet is a natural complement to mobile computers which may need to send and receive data from anywhere in the world.
In a separate trend, to minimize investments in time required to learn how to use software applications running on the mobile computers, each software application is typically provided with a graphical user interface. The graphical use interface provides simple interactive tools for an input, a manipulation and a display of data as well as program execution control through the use of windows, icons, menus, toolbars, scrollbars, command buttons, option buttons, text input boxes, dialog boxes and the like. By providing a graphical user interface, the applications allow a user to run the application intuitively and with minimum or no training at all. Particularly, the graphical user interface displayed on desktop browsers such as Netscape Navigator, available from Netscape Communications Corporation, or Internet Explorer, available from Microsoft Corporation, is a familiar interface which is easy to learn. Therefore, it is desirable to apply the browser user interface paradigm to applications running on the mobile computers.
The browser user interface is typically specified using a mark up language such as HTML. Each HTML document is essentially a collection of HTML codes or tags which provide the document with a general structure of a head and a body, as well as headings, format controls, forms, tables, and one or more element types. The head contains a title, while the body contains information actually displayed. The body can be made up of a number of elements such as texts, images, sound clips and tags for forming controls, lists, tables, frames, layers, and others. Typically, each HTML tag is specified by a left angle bracket (&lt;), a tag name, and a right angle bracket (&gt;). Tags are usually paired, for example &lt;HTML&gt; and &lt;/HTML&gt;, to start and end the tag instruction. The end tag resembles the start tag except a slash (/) precedes the text within the brackets. The adoption of the HTML language as a standard allows hypertext documents to be easily created. Further, when viewed with HTML browsers, these documents are displayed with a degree of consistency across a wide range of machines.
In many applications where pre-encoded data may already exist such as data resident on a card, a parcel package, a product label, or a shelf tag, it may be desirable to automatically capture the data. Additionally, it may be desirable to manually enter data using a keyboard directly into the application if the bar code or magnetic stripe code is damaged and unreadable. For these applications, the current HTML language requires custom software to handle automatic data capture devices.
As HTML language was originally designed for authors to turn a simple text document into a hypertext document for the World Wide Web, HTML lacks support for automated data capture and display in HTML input fields. Such automated data capture capability is important for applications such as inventory control, manufacturing control, and point of sale data capture, among others. Heretofore, in the event an application is written in HTML needs to capture data from various automatic data collection devices, developers were required to develop custom routines and code on a case by case basis. This process is time consuming, tedious and costly.